The present application generally relates to an anti-censorship framework for a web server that utilizes moving target defense techniques.
The wide spread use of the Internet has reshaped all aspects of the way people live today. From political issues and economic trends to social relationships, the impact of having information available at one's fingertips has been far-reaching. Freedom of information (including the right to access information) is generally considered to be a fundamental human right guaranteed by most cultures and their respective laws. Nonetheless, many people around the world are not able to freely access information over the Internet, and their respective governments (or other independent groups) censor what the people can and cannot see and attempt to prevent people from accessing certain types of information.
Some common censorship techniques include: Internet Protocol (IP) address blocking; Domain Name System (DNS) filtering; Uniform Resource Locator (URL) filtering; packet filtering; and network disconnection. IP address blocking can include blocking access to certain web sites as identified by their IP addresses. In DNS filtering, certain domain names are not resolved, thereby preventing access. In URL filtering, URL strings can be scrutinized regardless of the domain name in the URL string. Packet filtering can include monitoring network packet payloads for forbidden terms. To avoid these censorship techniques, users can utilize encrypted tunnels and proxies, such as virtual private networks (VPNs), open HTTPS proxies and Tor. In response to these censorship avoidance techniques, the censoring entity typically attempts to find and block the hosts of these services thereby limiting their effectiveness. Network disconnection can be an extreme censorship technique and can include turning off the network infrastructure to achieve censorship goals. Complete network disconnection is seldom implemented in practice, but there are no solutions to this censorship technique other than finding another way to get on to the Internet.